Chống Sở Hoa Nguyên

Năm 595 TCN, Sở Trang vương muốn đánh Tống bèn sai Thân Vô Úy giả danh là Thân Chu đi sứ nước Tề. Khi đi qua nước Tống Thân Chu thì cố ý không xin phép để tỏ ra coi khinh. Hoa Nguyên tức giận việc Thân Vô Úy đi qua không thèm xin phép nước Tống là coi khinh nước Tống không chủ, nên giết Thân Chu.

Sở Trang vương nghe tin Thân Chu bị giết, liền đem quân đánh Tống để trả thù, bao vây Thương Khâu suốt 7 tháng. Tống Văn công cầu cứu Tấn. Tấn Cảnh công muốn cứu Tống nhưng đại phu Bá Tôn can rằng Sở hùng mạnh không thể thắng được. Vì vậy, Tấn Cảnh công sai Giải Dương đi sứ nước Tống, nói dối là viện binh sẽ đến.[2]

Giải Dương đến nước Tống, bị bắt nộp cho Sở Trang vương. Trang vương bắt Giải Dương phải đến trước thành nước Tống nói rằng viện binh Tấn không đến để Tống Văn công đầu hàng. Giải Dương nhận lời, nhưng khi đến trước thành lại khuyên nước Tống cố thủ chờ viện binh Tấn. Sở Trang vương nổi giận định giết Giải Dương, nhưng vì cấp dưới can Giải Dương là tấm gương trung thành, nên vua Sở thả Giải Dương về. Hoa Nguyên tưởng quân Tấn sẽ đến nên cố sức phòng thủ.

Tống Văn công muốn cầu hòa với Sở, phái Hoa Nguyên đi sứ. Hoa Nguyên nhân đêm tối, đích thân giả thị vệ, cầm dao lẻn vào dinh quân Sở, thuật lại tình hình trong thành, và đề nghị quân Sở hãy rút lui 30 dặm để người Tống kiếm lương, nước Tống xin thần phục. Bị Hoa Nguyên uy hiếp, tướng Sở là Tử Phản phải thề với Hoa Nguyên, rồi đề nghị với Sở Trang vương. Sở Trang vương cũng đang thiếu lương, bằng lòng lui binh 30 dặm, nới vòng vây cho nước Tống. Tống Văn công sai người sang nghị hòa, rồi hai nước giảng hòa với nhau.[3] Hai bên thực tình nói cho nhau biết hoàn cảnh trong quân rất khó khăn. Sáng hôm sau, Tử Phản tâu với Sở Trang vương. Sở Trang vương tuy tức giận nhưng cuối cùng cũng chấp nhận giảng hòa, ăn thề với nước Tống.